Front-end systems are used in printers which are able to print a complete page line-wise with serially presented data. A typical representative of this type of printer is a laser printer.
Typically, graphical data is obtained by scanning an image by means of a scanning device and storing that data, with or without the aid of a coding system, in a memory. The data for printing a page are first processed, for example, by a graphical workstation, to produce the desired layout which may contain both textual and graphical data. This data is fed to the front-end system along with information relating to height, width and desired page position.
The front-end receives the data and operating instructions from the workstation or a printer console and are stored in a memory of the front-end system. Information on the shape of fonts and logos may also be fed to the front-end system or permanently stored therein. The exchange of data between the front-end system and peripheral devices is controlled by means of an input/output system which forms part of the front-end system. See, for example, British Application GB-A 2 185 608 and European Application EPA-0227-106.
In general, the input data need further processing in order to determine the exact positions of the fonts and graphical items to be printed. For example, in order to obtain an optimal spacing between the different characters or fonts of a text line, the different shapes and, in particular, the different widths of the fonts have to be considered when determining the exact positions of the fonts. The processes related to these kinds of problems shall be termed "fine formatting" hereinafter.
Subsequent to fine formatting, the data for the page is expanded into a bit representation and placed at the desired position in the page-size bitmap memory. When the bitmap has been filled completely, so that it contains a bit representation of the complete page, the data are read out of the bitmap and are supplied to the raster output scanner in the form of a serial pixel-bit stream.
A conventional front-end system is disclosed in United States application Ser. No. 912,588, filed Sep. 26, 1986, owned by the assignee of this invention and incorporated herein by reference.
In general, the front-end system therein described includes three processing units, i.e., an I/O-processor for controlling the exchange of data with the workstation, the printer console and the like, a main processor for controlling the functions of the individual components of the front-end system and for carrying out the fine formatting process, and a raster image processor for filling and reading the bitmap. A first bus system, e.g., a VME bus, interconnects the I/O-processor, the main processor, the raster image processor and the memory in which the fonts, the coded input data and the like are stored. The communication between the raster image processor and the bitmap is provided by a second bus system.
In this system, the performance capacities of the I/O-processor and the raster image processor are not fully exploited. On the other hand, the main processor is fully used or over utilized resulting in a limited operating speed of the entire front-end system.
Accordingly, it is an object of the present invention to utilize the capacities of the processors more efficiently, so that the operating speed of the front-end system can be increased or the complexity of the hardware reduced.